package day06;

import com.sun.scenario.effect.impl.sw.sse.SSEBlend_SRC_OUTPeer;

import javax.naming.Name;
import java.security.PublicKey;

public class MethodDemo {
    public static void main(String[] args) {
        sayHello("lyl", 22);
        sayHello("lyl", 88);
        sayHi("lyl");
        say();
        double a = getNum();
        System.out.println(a);
        int b = plus(5, 6);
        System.out.println(b); //11


        int m = 5, n = 6;
        int c = plus(m, n);
        System.out.println(c);


        int[] d = testArray(5, 100);
        System.out.println("数组的长度为:" + d.length);
        for (int i = 0; i < d.length; i++) {
            System.out.println(d[i]);
        }

        int[] e = testArray(8, 28);
        System.out.println("第一个元素的值为：" + e[0]);
        for (int i = 0; i < e.length; i++) {   //---模拟对返回值的后续操作
            System.out.println(e[i]);
        }
         aMethod();
                System.out.println(444);

    }
    //无返回值：方法名（有参传参）  有返回值：数据类型 变量 = 方法名（有参传参）;

    // 有参无返回值
    public static void sayHello(String name, int age) {
        if (age > 60) {  //在某种特定条件下，提前结束方法
            return; //结束方法的执行
        }
        System.out.println("大家好，我叫李宏伟，今年22岁，我爹李有田");
    }


    //无参无返回值
       public static void say() {
        System.out.println("大家好，我叫LYL，今年22岁");
    }


    //有参无返回值
    public static void sayHi(String name) {
        System.out.println("大家好，我叫" + name + "，今年19岁");
    }

    //无参有返回值
    public static double getNum() {
        //在有返回值的方法中，必须通过return来返回数据
        //return;//return后必须有数据
        return 8.88; //1)结束方法的执行 2）返回结果给调用方


    }

    //无参有返回值
    public static int[] testArray() {
        int[] arr = new int[10];
        for (int i = 0; i < arr.length; i++) {
            arr[i] = (int) (Math.random() * 100);
        }
        return arr;
    }

    //有参有返回值
    public static int plus(int num1, int num2) {
        int num = num1 + num2;
        return num;//返回的是num里面的那个数
        //return num1+num2； //
    }

    //有参有返回值
    public static int[] testArray(int len, int max) {
        int[] arr = new int[10];
        for (int i = 0; i < arr.length; i++) {
            arr[i] = (int) (Math.random() * 100);
        }
        return arr;


    }
    public static void aMethod(){
        System.out.println(111);
        bMethod(); //嵌套调用
        System.out.println(222);
    }
    public static void bMethod(){
        System.out.println(333);
    }
}